草庐IT

java - 将 char[] 数组转换为 String

全部标签

ruby - 数组到哈希 Ruby

转换这个数组:a=["item1","item2","item3","item4"]...到哈希:{"item1"=>"item2","item3"=>"item4"}即偶数索引处的元素是键,奇数处的元素是值。 最佳答案 a=["item1","item2","item3","item4"]h=Hash[*a]#=>{"item1"=>"item2","item3"=>"item4"}就是这样。*称为splat运算符。@MikeLewis的一个警告(在评论中):“对此要非常小心。Ruby会在堆栈上扩展splats。如果您对大型数据集

ruby - 在 Ruby 中使用范围填充数组的正确方法

我正在阅读一本书,其中给出了使用“to_a”方法将范围转换为等效数组的示例当我在irb中运行代码时,我收到以下警告warning:default`to_a'willbeobsolete使用to_a的正确替代方法是什么?有其他方法可以用范围填充数组吗? 最佳答案 您可以使用splat创建具有范围的数组,>>a=*(1..10)=>[1,2,3,4,5,6,7,8,9,10]使用KernelArray方法,Array(1..10)=>[1,2,3,4,5,6,7,8,9,10]或使用to_a(1..10).to_a=>[1,2,3,4,

arrays - 将元素推到数组开头的最简单方法是什么?

我想不出一种单行方式来做到这一点。有办法吗? 最佳答案 使用unshift怎么样?方法?ary.unshift(obj,...)→aryPrependsobjectstothefrontofself,movingotherelementsupwards.并在使用中:irb>>a=[0,1,2]=>[0,1,2]irb>>a.unshift('x')=>["x",0,1,2]irb>>a.inspect=>"["x",0,1,2]" 关于arrays-将元素推到数组开头的最简单方法是什么?

ruby - Ruby 是否有 string.startswith ("abc") 内置方法?

Ruby是否有内置的some_string.starts_with("abc")方法? 最佳答案 它叫做String#start_with?,而不是String#startswith:在Ruby中,bool型方法的名称以?结尾,方法名称中的单词以_分隔>。在Rails上,您可以使用别名String#starts_with?(注意复数-并注意此方法已弃用)。就个人而言,我更喜欢String#starts_with?而不是实际的String#start_with? 关于ruby-Ruby是否

Ruby:如何将哈希值转换为 HTTP 参数?

使用像这样的普通散列就很容易了{:a=>"a",:b=>"b"}这将转化为"a=a&b=b"但是你如何处理更复杂的东西,比如{:a=>"a",:b=>["c","d","e"]}应该翻译成"a=a&b[0]=c&b[1]=d&b[2]=e"或者更糟糕的是,(做什么)类似的东西:{:a=>"a",:b=>[{:c=>"c",:d=>"d"},{:e=>"e",:f=>"f"}]感谢您对此的大力帮助! 最佳答案 对于基本的、非嵌套的哈希,Rails/ActiveSupport有Object#to_query。>>{:a=>"a",:b=

ruby - 在 Ruby 中将整数转换为十六进制字符串

是否有一种内置方法可以将Ruby中的整数转换为其等效的十六进制数?类似于String#to_i的反义词:"0A".to_i(16)#=>10也许像:"0A".hex#=>10我知道如何自己动手,但使用内置的Ruby函数可能更有效。 最佳答案 你可以给to_s10以外的基数:10.to_s(16)#=>"a"请注意,在ruby​​2.4中,FixNum和BigNum统一在Integer类中。如果您使用的是旧版ruby,请查看FixNum#to_s的文档和BigNum#to_s 关于ruby

ruby-on-rails - 如何从 Ruby 数组创建平均值?

如何从数组中找到平均值?如果我有数组:[0,4,8,2,5,0,2,6]平均会得到3.375。 最佳答案 试试这个:arr=[5,6,7,8]arr.inject{|sum,el|sum+el}.to_f/arr.size=>6.5注意.to_f,您需要它来避免整数除法的任何问题。您还可以:arr=[5,6,7,8]arr.inject(0.0){|sum,el|sum+el}/arr.size=>6.5您可以按照另一位评论者的建议将其定义为Array的一部分,但您需要避免整数除法,否则您的结果将是错误的。此外,这通常并不适用于所有

arrays - 如何在 Ruby 中拆分分隔字符串并将其转换为数组?

我有一个字符串“1,2,3,4”我想把它转换成一个数组:[1,2,3,4]如何? 最佳答案 >>"1,2,3,4".split(",")=>["1","2","3","4"]或者对于整数:>>"1,2,3,4".split(",").map{|s|s.to_i}=>[1,2,3,4]或者对于更高版本的ruby​​(>=1.9-正如Alex所指出的):>>"1,2,3,4".split(",").map(&:to_i)=>[1,2,3,4] 关于arrays-如何在Ruby中拆分分隔字符串

ruby - 如何在 ruby​​ 中通过哈希值在哈希数组中进行搜索?

我有一个哈希数组,@fathers。a_father={"father"=>"Bob","age"=>40}@fathers"David","age"=>32}@fathers"Batman","age"=>50}@fathers我如何搜索这个数组并返回一个block返回true的哈希数组?例如:@fathers.some_method("age">35)#=>arraycontainingthehashesofbobandbatman谢谢。 最佳答案 您正在寻找Enumerable#select(也称为find_all):@fat

ruby-on-rails - 在 ruby​​ 中将字符串转换为可符号化

符号通常这样表示:book_author_title但是如果我有一个字符串:"BookAuthorTitle"rails/ruby中是否有一种内置方式可以将其转换为一个符号,我可以在其中使用:表示法,而不只是进行原始字符串正则表达式替换? 最佳答案 Rails获得了提供此类方法的ActiveSupport::CoreExtensions::String::Inflections模块。都值得一看。对于您的示例:'BookAuthorTitle'.parameterize.underscore.to_sym#:book_author_t